function [cellData] = PrachCorrDate(cellParams,cellData)
    prachFFTSize = cellParams.prach.L1.FFTSize;
    prachCpsize = cellParams.prach.L1.prachCPSize;
    rootSequenceNum = cellParams.prach.L1.rootSequenceNum;
    downsampleRate = cellParams.prach.L1.downsampleRate;
    downCpSize = prachCpsize/downsampleRate;
    filterDelay = cellParams.prach.L1.filterDelay;
    
    downsample = cellData.prach.downsample;
    downSequence = downsample(downCpSize+1+filterDelay:downCpSize+prachFFTSize+filterDelay);
    downSequenceFFT = fft(downSequence);
    % downSequenceFFTShift = circshift(downSequenceFFT,431);
    zcSequenceFFT = [cellData.prach.zcSequenceFFT.'; zeros(prachFFTSize-length(cellData.prach.zcSequenceFFT),rootSequenceNum)];
    corrDate = zcSequenceFFT.*conj(repmat(downSequenceFFT,1,64));
    corrDateTD = ifft(corrDate);
    PDP = abs(corrDateTD);

    cellData.prach.downSequence = downSequence;
    cellData.prach.downSequenceFFT = downSequenceFFT;
    % cellData.prach.downSequenceFFTShift = downSequenceFFTShift;
    cellData.prach.corrDate = corrDate;
    cellData.prach.corrDateTD = corrDateTD;
    cellData.prach.PDP = PDP;

    cellData.prach.downSequenceExplain = "降采样序列去除CP,GT和滤波器延时";
    cellData.prach.downSequenceFFTExplain = "降采样序列的fft变换";
    cellData.prach.corrDateExplain = "zc序列与降采样序列的互相关";
    cellData.prach.corrDateTDExplain = "互相关序列的ifft变换";
    cellData.prach.PDPExplain = "互相关序列的绝对值,也就是PDP谱,功率延时谱";

    if cellParams.cellConfig.figEnable
        prachFigSavePath = cellParams.prach.figSavePath;
        plot(abs(downSequence));
        title(cellData.prach.downSequenceExplain);
        if cellParams.cellConfig.figType == "fig"
            savefig(gcf, append(prachFigSavePath,'downSequence.fig')); 
        elseif cellParams.cellConfig.figType == "jpg"
            saveas(gcf, append(prachFigSavePath,'downSequence.jpg')); 
        end
        plot(abs(downSequenceFFT));
        title(cellData.prach.downSequenceFFTExplain);
        if cellParams.cellConfig.figType == "fig"
            savefig(gcf, append(prachFigSavePath,'downSequenceFFT.fig')); 
        elseif cellParams.cellConfig.figType == "jpg"
            saveas(gcf, append(prachFigSavePath,'downSequenceFFT.jpg')); 
        end
        surf(abs(corrDate));
        title(cellData.prach.corrDateExplain);
        if cellParams.cellConfig.figType == "fig"
            savefig(gcf, append(prachFigSavePath,'corrDate.fig')); 
        elseif cellParams.cellConfig.figType == "jpg"
            saveas(gcf, append(prachFigSavePath,'corrDate.jpg')); 
        end
        surf(abs(corrDateTD));
        title(cellData.prach.corrDateTDExplain);
        if cellParams.cellConfig.figType == "fig"
            savefig(gcf, append(prachFigSavePath,'corrDateTD.fig')); 
        elseif cellParams.cellConfig.figType == "jpg"
            saveas(gcf, append(prachFigSavePath,'corrDateTD.jpg')); 
        end
        surf(abs(PDP));
        title(cellData.prach.PDPExplain);
        if cellParams.cellConfig.figType == "fig"
            savefig(gcf, append(prachFigSavePath,'PDP.fig')); 
        elseif cellParams.cellConfig.figType == "jpg"
            saveas(gcf, append(prachFigSavePath,'PDP.jpg')); 
        end
    end

    if cellParams.cellConfig.dataEnable
        prachDataSavePath = cellParams.prach.dataSavePath;
        save(append(prachDataSavePath,'downSequence.mat'), 'downSequence');
        save(append(prachDataSavePath,'downSequenceFFT.mat'), 'downSequenceFFT');
        save(append(prachDataSavePath,'corrDate.mat'), 'corrDate');
        save(append(prachDataSavePath,'corrDateTD.mat'), 'corrDateTD');
        save(append(prachDataSavePath,'PDP.mat'), 'PDP');
    end


end

